---
title: "Create a shopper  (Client hosted shopper)"
method: POST
path: "/v1/shoppers (Client hosted shopper)"
tags: ["Shoppers"]
---

# Create a shopper  (Client hosted shopper)

`POST /v1/shoppers (Client hosted shopper)`

Create a Digital River partner maintained shopper.

## Query parameters

- `token` string
- `expand` string
- `fields` string

## Request body

- DefaultClientHostedShopperRequest
  - `shopper` object
    - `firstName` string — The shopper's first name.
    - `lastName` string — The shopper's last name.
    - `externalReferenceId` string — The external reference identifier.
    - `emailAddress` string — The shopper's email address.
    - `locale` string — The shopper's preferred locale.
    - `currency` string — The shopper's preferred currency.
    - `sendMail` boolean — This API has two fields in its request/response body: "sendMail" and "sendEmail". Both fields indicate whether shoppers opt-in to promotional emails using True/False values. - If customers have a single type of promotional email, select either "sendMail" or "sendEmail" to record shopper preferences. - If customers have two distinct types of promotional emails, use both fields to differentiate between them. For example, "sendMail" could indicate interest in product updates, while "sendEmail" could indicate interest in sales and discounts. Please note that Digital River does not send promotional emails. These fields only track shopper preferences and do not affect Digital River’s system notifications.
    - `sendEMail` boolean — Similar to sendMail, this API has two fields in its request/response body: "sendMail" and "sendEmail". Both fields indicate whether shoppers opt-in to promotional emails using True/False values. - If customers have a single type of promotional email, select either "sendMail" or "sendEmail" to record shopper preferences. - If customers have two distinct types of promotional emails, use both fields to differentiate between them. For example, "sendMail" could indicate interest in product updates, while "sendEmail" could indicate interest in sales and discounts. Please note that Digital River does not send promotional emails. These fields only track shopper preferences and do not affect Digital River’s system notifications. Please distinguish this field from the sendEmail field in the v1/shoppers/me/carts API.

## Response `201`

*  Created (Empty Response)
*  Created (With additional information, contact the Digital River team for setup.)

- union
  - string
  - DefaultClientHostedShopper
    - `shopper` object
      - `uri` string — The Uniform Resource Identifier.
      - `id` integer — The unique identifier for the shopper.
      - `firstName` string — The shopper's first name.
      - `lastName` string — The shopper's last name.
      - `emailAddress` string — The shopper's email address.
      - `paymentOptions` object — The saved payment options.
        - `uri` string
      - `addresses` object — The saved addresses.
        - `uri` string
      - `orders` object — The shopper's orders.
        - `uri` string
      - `subscriptions` object — The shopper's subscriptions.
        - `uri` string
  - ExpandedClientHostedShopper
    - `shopper` object
      - `uri` string — The Uniform Resource Identifier.
      - `id` integer — The unique identifier for the shopper.
      - `externalReferenceId` string — The external reference identifier.
      - `firstName` string — The shopper's first name.
      - `lastName` string — The shopper's last name.
      - `emailAddress` string — The shopper's email address.
      - `locale` string — The shopper's preferred locale.
      - `currency` string — The shopper's preferred currency.
      - `sendMail` boolean — This API has two fields in its request/response body: "sendMail" and "sendEmail". Both fields indicate whether shoppers opt-in to promotional emails using True/False values. - If customers have a single type of promotional email, select either "sendMail" or "sendEmail" to record shopper preferences. - If customers have two distinct types of promotional emails, use both fields to differentiate between them. For example, "sendMail" could indicate interest in product updates, while "sendEmail" could indicate interest in sales and discounts. Please note that Digital River does not send promotional emails. These fields only track shopper preferences and do not affect Digital River’s system notifications.
      - `sendEMail` boolean — Similar to sendMail, this API has two fields in its request/response body: "sendMail" and "sendEmail". Both fields indicate whether shoppers opt-in to promotional emails using True/False values. - If customers have a single type of promotional email, select either "sendMail" or "sendEmail" to record shopper preferences. - If customers have two distinct types of promotional emails, use both fields to differentiate between them. For example, "sendMail" could indicate interest in product updates, while "sendEmail" could indicate interest in sales and discounts. Please note that Digital River does not send promotional emails. These fields only track shopper preferences and do not affect Digital River’s system notifications. Please distinguish this field from the sendEmail field in the v1/shoppers/me/carts API.
      - `ipAddress` string — The shopper's IP address. IPv4 or IPv6.
      - `paymentOptions` object — The saved payment options.
        - `uri` string
      - `addresses` object — The saved addresses.
        - `uri` string
      - `orders` object — The shopper's orders.
        - `uri` string
      - `subscriptions` object — The shopper's subscriptions.
        - `uri` string

## Other responses

- `400` — * Bad Request
- `401` — * Invalid Token
- `409` — * Restricted IP address * Invalid Currency Code * Invalid Locale

---

[API](https://skmtc.net/digitalriver/apis/commerce-api-suite-shopper-apis.md) · [All operations](https://skmtc.net/digitalriver/apis/commerce-api-suite-shopper-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/digitalriver/commerce-api-suite-shopper-apis/revisions/4b69392f93b9/schema)
